list<>泛型的问题

来源:百度知道 编辑:UC知道 时间:2024/06/04 22:04:31
第一次接触这个概念,可以帮我讲讲这个东西怎么用吗?有简单的例子最好啦,谢谢啦

泛型主要是加入了一个类型参数的概念。这个类型参数可以运用在类,接口,方法,委托等地方。意义是:比如我有一个类,里面有一个成员的类型我不确定。它可能可以是任意类型,在没有泛型的情况下,我们会把这个成员设置成object类型的成员。问题是,在使用这个成员是我需要做类型转换,这样就有性能损失。而泛型可以在编译是根据类型参数的值确定这个成员的类型。比如下面代码
namesapce MyTest
{
//<T>中的T可以写成任意的名称T不是保留字
public class TestClass<T>
{
T m_Data;//这里T表示m_Data的类型,它将在编译时由其他代码决定
public TestClass<T>(T data)
{
m_Data=data;
}
}

public class TestProgram
{
/*下面代码中TestClass类的T参数分别被设置成int,string,object和float,所有用到参数T的地发都将被实际的类型所替代
*/
public TestClass<int> intData;
public TestClass<string> stringData;
public TestClass<object> objectData;
public TestClass<float> floatData;

public TestProgram()
{
intData=new TestClass<int>(1);
stringData=new TestClass<string>("Test");
objectData=new TestClass<obj